Rate selection for an OFDM system

ABSTRACT

Techniques to determine the rate for a data transmission in an OFDM system. The maximum data rate that may be reliably transmitted over a given multipath (non-flat) channel by the OFDM system is determined based on a metric for an equivalent (flat) channel. For the given multipath channel and a particular rate (which may be indicative of a particular data rate, modulation scheme, and coding rate), the metric is initially derived from an equivalent data rate and the particular modulation scheme. A threshold SNR needed to reliably transmit the particular data rate using the particular modulation scheme and coding rate is then determined. The particular rate is deemed as being supported by the multipath channel if the metric is greater than or equal to the threshold SNR. Incremental transmission is used to account for errors in the determined data rate.

CROSS REFERENCE

This application is a continuation-in-part of co-pending applicationSer. No. 09/991,039, filed Nov. 21, 2001, entitled “RATE SELECTION FORAN OFDM SYSTEM,” and currently assigned to the assignee of the presentapplication.

BACKGROUND

1. Field

The present invention relates generally to data communication, and morespecifically to techniques for selecting rate for a wireless (e.g.,OFDM) communication system.

2. Background

Wireless communication systems are widely deployed to provide varioustypes of communication such as voice, data, and so on. These systems mayimplement orthogonal frequency division multiplex (OFDM) modulation,which may be capable of providing high performance for some channelenvironments. In an OFDM system, the system bandwidth is effectivelypartitioned into a number of (NF) frequency subchannels (which may bereferred to as sub-bands or frequency bins). Each frequency subchannelis associated with a respective subcarrier (or frequency tone) uponwhich data may be modulated. Typically, the data to be transmitted(i.e., the information bits) is encoded with a particular coding schemeto generate coded bits, and the coded bits may further be grouped intomulti-bit symbols that are then mapped to modulation symbols based on aparticular modulation scheme (e.g., M-PSK or M-QAM). At each timeinterval that may be dependent on the bandwidth of each frequencysubchannel, a modulation symbol may be transmitted on each of the NFfrequency subchannels.

The frequency subchannels of an OFDM system may experience differentchannel conditions (e.g., different fading and multipath effects) andmay achieve different signal-to-noise-and-interference ratios (SNRs).Each transmitted modulation symbol is affected by the frequency responseof the communication channel at the particular frequency subchannel viawhich the symbol was transmitted. Depending on the multipath profile ofthe communication channel, the frequency response may vary widelythroughout the system bandwidth. Thus, the modulation symbols thatcollectively form a particular data packet may be individually receivedwith a wide range of SNRs via the NF frequency subchannels, and the SNRwould then vary correspondingly across the entire packet.

For a multipath channel having a frequency response that is not flat orconstant, the number of information bits per modulation symbol (i.e.,the data rate or information rate) that may be reliably transmitted oneach frequency subchannel may be different from subchannel tosubchannel. Moreover, the channel conditions typically vary over time.As a result, the supported data rates for the frequency subchannels alsovary over time.

Since the channel conditions experienced by a given receiver aretypically not known a priori, it is impractical to transmit data at thesame transmit power and/or data rate to all receivers. Fixing thesetransmission parameters would likely result in a waste of transmitpower, the use of sub-optimal data rates for some receivers, andunreliable communication for some other receivers, all of which leads toan undesirable decrease in system capacity. The different transmissioncapabilities of the communication channels for different receivers plusthe time-variant and multipath nature of these channels make itchallenging to effectively code and modulate data for transmission in anOFDM system.

There is therefore a need in the art for techniques to select the properrate for data transmission in a wireless (e.g., OFDM) communicationsystem having the channel characteristics described above.

BRIEF DESCRIPTION OF THE DRAWINGS

The features, nature, and advantages of the present invention willbecome more apparent from the detailed description set forth below whentaken in conjunction with the drawings in which like referencecharacters identify correspondingly throughout and wherein:

FIG. 1A is a diagram of a simplified model of an OFDM communicationsystem;

FIG. 1B is a diagram that graphically illustrates rate selection for amultipath channel using an equivalent channel;

FIG. 2 is a flow diagram of an embodiment of a process for selectingdata rate for use in the OFDM system based on a metric Ψ;

FIG. 3 is a block diagram of an embodiment of a transmitter system and areceiver system, which are capable of implementing various aspects andembodiments of the invention;

FIG. 4 is a block diagram of an embodiment of a transmitter unit;

FIG. 5 is a block diagram of an embodiment of a receiver unit;

FIG. 6 is a flow diagram of a Constrained Capacity Rate Adaptation(CCRA) algorithm;

FIGS. 7A–7D are flow diagrams of a Modified-CCRA (M-CCRA) algorithm; and

FIG. 8 is a graphical comparison of performance of the CCRA algorithm toan ideal rate selection.

DETAILED DESCRIPTION

The techniques described herein for determining and selecting the ratefor a data transmission may be used for various wireless communicationsystems comprising one or more independent transmission channels, e.g.,multiple-input multiple-output (MIMO) systems. For clarity, variousaspects and embodiments of the invention are described specifically foran orthogonal frequency division multiplex (OFDM) system, where theindependent transmission channels are the frequency subchannels or binsformed by dividing the total system bandwidth.

FIG. 1A is a diagram of a simplified model of the OFDM system. At atransmitter 110, traffic data is provided at a particular data rate froma data source 112 to an encoder/modulator 114, which codes the data inaccordance with one or more coding schemes and further modulates thecoded data in accordance with one or more modulation schemes. Themodulation may be achieved by grouping sets of coded bits to formmulti-bit symbols and mapping each multi-bit symbol to a point in asignal constellation corresponding to the particular modulation scheme(e.g., QPSK, M-PSK, or M-QAM) selected for each frequency subchannelused to transmit the symbol. Each mapped signal point corresponds to amodulation symbol.

In an embodiment, the data rate is determined by a data rate control,the coding scheme(s) are determined by a coding control, and themodulation scheme(s) are determined by a modulation control, all ofwhich are provided by a controller 130 based on feedback informationreceived from a receiver 150.

A pilot may also be transmitted to the receiver to assist it perform anumber of functions such as channel estimation, acquisition, frequencyand timing synchronization, coherent data demodulation, and so on. Inthis case, pilot data is provided to encoder/modulator 114, which thenmultiplexes and processes the pilot data with the traffic data.

For OFDM, the modulated data (i.e., the modulation symbols) is thentransformed to the time domain by an inverse fast Fourier transformer(IFFT) 116 to provide OFDM symbols, with each OFDM symbol correspondingto a time representation of a vector of N_(F) modulation symbols to betransmitted on N_(F) frequency subchannels in a transmission symbolperiod. In contrast to a single carrier “time-coded” system, the OFDMsystem effectively transmits the modulation symbols “in the frequencydomain”, by sending in the time domain the IFFT of the modulationsymbols that represent the traffic data. The OFDM symbols are furtherprocessed (not shown in FIG. 1A for simplicity) to generate a modulatedsignal, which is then transmitted over a wireless communication channelto the receiver. As shown in FIG. 1A, the communication channel has afrequency response of H(f) and further degrades the modulated signalwith additive white Gaussian noise (AWGN) of n(t).

At receiver 150, the transmitted modulated signal is received,conditioned, and digitized to provide data samples. A fast Fouriertransformer (FFT) 160 then receives and transforms the data samples tothe frequency domain, and the recovered OFDM symbols are provided to ademodulator/decoder 162 and a channel estimator 164. Demodulator/decoder162 processes (e.g., demodulates and decodes) the recovered OFDM symbolsto provide decoded data, and may further provide a status of eachreceived packet. Channel estimator 164 processes the recovered OFDMsymbols to provide estimates of one or more characteristics of thecommunication channel, such as the channel frequency response, thechannel noise variance, the signal-to-noise-and-interference ratio (SNR)of the received symbols, and so on.

A rate selector 166 receives the estimates from channel estimator 164and determines a suitable “rate” that may be used for all or a subset ofthe frequency subchannels available for use for data transmission. Therate is indicative of a set of specific values for a set of parameters.For example, the rate may indicate (or may be associated with) aspecific data rate to be used for the data transmission, a specificcoding scheme and/or coding rate, a specific modulation scheme, and soon.

A controller 170 receives the rate from rate selector 166 and the packetstatus from demodulator/decoder 162 and provides the appropriatefeedback information to be sent back to transmitter 110. This feedbackinformation may include the rate, the channel estimates provided bychannel estimator 164, an acknowledgment (ACK) or negativeacknowledgment (NACK) for each received packet, some other information,or any combination thereof. The feedback information is used to increasethe efficiency of the system by adjusting the data processing at thetransmitter such that the data transmission is performed at the bestknown settings of power and rate that may be supported by thecommunication channel. The feedback information is then sent back totransmitter 110 and used to adjust the processing (e.g., the data rate,coding, and modulation) of the data transmission to receiver 150.

In the embodiment shown in FIG. 1A, the rate selection is performed byreceiver 150 and the selected rate is provided to transmitter 110. Inother embodiments, the rate selection may be performed by thetransmitter based on feedback information provided by the receiver, ormay be performed jointly by both the transmitter and receiver.

Under suitable conditions, the recovered OFDM symbols at the output ofFFT 160 may be expressed as:Ŷ(k)=Y(k)H(k)+N(k),  Eq (1)

where k is an index for the frequency subchannels of the OFDM system,i.e., k=0, 1, . . . , N_(F)−1, where N_(F) is the number of frequencysubchannels;

Y(k) are the modulation symbols transmitted on the k-th frequencysubchannel, which are derived based on a particular modulation schemeused for the k-th frequency subchannel;

H(k) is the frequency response of the communication channel, representedin “quantized” form for each frequency subchannel;

N(k) represents the FFT of a sequence of N_(F) samples of thetime-domain noise, i.e., FFT{n(kT)} for k=0, 1, . . . , N_(F)−1; and Tis the sampling period.

In a single carrier system, the transmitted symbols may all be receivedat the receiver at approximately the same SNR. The relationship betweenthe SNR of a “constant SNR” packet and the probability of error for thepacket is well known in the art. As an approximation, the maximum datarate supported by the single carrier system with a particular achievedSNR may be estimated as the maximum data rate supported by an AWGNchannel with the same SNR. The main characteristic of the AWGN channelis that its frequency response is flat or constant across the entiresystem bandwidth.

However, in an OFDM system, the modulation symbols that make up a packetare transmitted across multiple frequency subchannels. Depending on thefrequency response of the frequency subchannels used to transmit thepacket, the SNR may vary across the entire packet. This problem of“varying SNR” packet is exacerbated as the system bandwidth increasesand for a multipath environment.

A major challenge for an OFDM system is then to determine the maximumdata rate that may be used for data transmission while achieving aparticular level of performance, which may be quantified by a particularpacket error rate (PER), frame error rate (FER), bit error rate (BER),or some other criterion. For example, the desired level of performancemay be achieved by maintaining the PER within a small window around aparticular nominal value (e.g., P_(e)=1%).

In a typical communication system, a set of specific and discrete datarates may be defined, and only these data rates may be available foruse. Each data rate, D(r), may be associated with a specific modulationscheme or constellation, M(r), and a specific coding rate, C(r). Eachdata rate would further require a particular SNR(r), which is theminimum SNR at which the resulting PER for the data transmission at thatdata rate is less than or equal to the desired PER, P_(e). This SNR(r)assumes that the communication channel is AWGN (i.e., with a flatfrequency response across the entire system bandwidth, or H(k)=H for allk). Typically, the communication channel between the transmitter andreceiver is not AWGN, but is instead dispersive or frequency selective(i.e., different amounts of attenuation at different sub-bands of thesystem bandwidth). For such a multipath channel, the particular datarate to be used for data transmission may be selected to account for themultipath or frequency selective nature of the channel.

Each data rate, D(r), may thus be associated with a set of parametersthat characterizes it. These parameters may include the modulationscheme M(r), the coding rate C(r), and the required SNR(r), as follows:D(r)⇄[M(r),C(r),SNR(r)],  Eq (2)

where r is an index for the data rates, i.e., r=0, 1, . . . , N_(R)−1,where N_(R) is the total number of data rates available for use.Equation (2) states that data rate D(r) may be transmitted usingmodulation scheme M(r) and coding rate C(r) and further requires SNR(r)in an AWGN channel to achieve the desired nominal PER P_(e). The N_(R)data rates may be ordered such that D(0)<D(1)<D(2) . . . <D(N_(R)−1).

In accordance with an aspect of the invention, the maximum data ratethat may be reliably transmitted over a given multipath channel in anOFDM system is determined based on a metric for an equivalent AWGNchannel. Reliable transmission is achieved if the desired PER of P_(e)is maintained for the data transmission. Details of this aspect aredescribed below.

FIG. 1B is a diagram that graphically illustrates the rate selection fora multipath channel using an equivalent channel. For a given multipathchannel defined by a channel response of H(k) and a noise variance ofN₀, the OFDM system may be capable of achieving an equivalent data rateof D_(equiv) using modulation scheme M(k), where M(k) may be differentfor different frequency subchannels. This D_(equiv) may be estimated asdescribed below based on a particular channel capacity functionf[H(k),N₀,M(k)]. Since the bandwidth of each individual frequencysubchannel is normalized to 1, it does not appear as an argument of thefunction f[•]. The metric, which is an estimate of the SNR, SNR_(equiv),required by an equivalent AWGN channel to transmit at the equivalentdata rate of D_(equiv) using modulation scheme M(k) at the desired PERof P_(e), may be derived for D_(equiv) using M(k) and further based on afunction g(D_(equiv),M(k)) that is also described below.

For a data rate D(k), modulation scheme M(k), and coding rate C(k), theAWGN channel would need an SNR of SNR_(th) or better to achieve thedesired PER of P_(e). This threshold SNR_(th) may be determined bycomputer simulation or some other means. The data rate D(k) may then bedeemed as being supported by the OFDM system for the multipath channelif the metric (or SNR_(equiv)) is equal to or greater than SNR_(th). Asthe data rate D(k) increases, the threshold SNR_(th) increases for thegiven channel conditions defined by H(k) and N₀. The maximum data ratethat may be supported by the OFDM system is thus limited by the channelconditions. Various schemes are provided herein to determine the maximumdata rate that may be supported by the OFDM system for the givenmultipath channel. Some of these schemes are described below.

In a first rate selection scheme, the metric Ψ receives a set ofparameters for a data transmission on a given multipath channel in anOFDM system and, based on the received parameters, provides an estimateof the SNR for an AWGN channel equivalent to the multipath channel.These input parameters to the metric Ψ may include one or moreparameters related to the processing of the data transmission (e.g., themodulation scheme M(k)) and one or more parameters related to thecommunication channel (e.g., the channel response H(k) and the noisevariance N₀). As noted above, the modulation scheme M(k) may beassociated with a specific data rate D(k). The metric Ψ is the estimateof the SNR of the equivalent AWGN channel (i.e., Ψ≈SNR_(equiv)). Themaximum data rate supported by the multipath channel may then bedetermined as the highest data rate associated with an equivalent SNRthat is greater than or equal to the threshold SNR, SNR_(th), requiredon the AWGN channel to achieve the desired PER of P_(e) using the codingand modulation schemes associated with the data rate.

Various functions may be used for the metric Ψ, some of which areprovided below. In an embodiment, the metric Ψ is defined as:$\begin{matrix}{\Psi = {g{\left\{ {\left( {\sum\limits_{k = 0}^{N_{F} - 1}\;{f\left\lbrack {{H(k)},N_{0},M} \right\rbrack}} \right),M} \right\}.}}} & {{Eq}\mspace{14mu}(3)}\end{matrix}$

In equation (3), the function f[H(k),N₀,M] determines the maximum datarate that modulation scheme M can carry on the k-th frequency subchannelwith the frequency response H(k) and the noise variance N₀. The functionf[H(k),N₀,M] may be defined based on various channel capacity functions,as described below.

The parameters H(k) and N₀ may be mapped to an SNR(k). If the totaltransmit power, P_(total), for the system is fixed and the allocation ofthe transmit power to the N_(F) frequency subchannels is uniform andfixed, then the SNR for each frequency subchannel may be expressed as:$\begin{matrix}{{{SNR}(k)} = {\frac{P_{total}}{N_{F}}{\frac{{{H(k)}}^{2}}{N_{0}}.}}} & {{Eq}\mspace{14mu}(4)}\end{matrix}$

As shown in equation (4), SNR(k) is a function of the channel responseH(k) and the noise variance N₀, which are two of the parameters of thefunction f[H(k),N₀,M].

The summation in equation (3) is performed for f[•] over all N_(F)frequency subchannels to provide the equivalent data rate D_(equiv) thatmay be transmitted on the AWGN channel. The function g(D_(equiv),M) thendetermines the SNR needed in the AWGN channel to reliably transmit atthe equivalent data rate D_(equiv) using the modulation scheme M.

Equation (3) assumes that the same modulation scheme M is used for allN_(F) frequency subchannels in the OFDM system. This restriction resultsin simplified processing at the transmitter and receiver in the OFDMsystem but may sacrifice performance.

If different modulation schemes may be used for different frequencysubchannels, then the metric Ψ may be defined as: $\begin{matrix}{\Psi = {\sum\limits_{k = 0}^{N_{F} - 1}\;{{g\left( {{f\left\lbrack {{H(k)},N_{0},{M(k)}} \right\rbrack},{M(k)}} \right)}.}}} & {{Eq}\mspace{14mu}(5)}\end{matrix}$

As shown in equation (5), the modulation scheme, M(k), is a function ofthe index k of the frequency subchannels. The use of differentmodulation schemes and/or coding rates for different frequencysubchannels is also referred to as “bit loading”.

The function f[x] determines the data rate that may be reliablytransmitted over the AWGN channel for a set of parameters collectivelyrepresented as x, where x may be a function of frequency (i.e., x(k)).In equation (5), the function f[H(k),N₀,M(k)], wherex(k)={H(k),N₀,M(k)}, determines the data rate that modulation schemeM(k) can carry on the k-th frequency subchannel with the channelresponse H(k) and the noise variance N₀, The function g(f[x(k)],M(k))then determines the SNR needed in the equivalent AWGN channel to carrythe data rate determined by f[x(k)]. The summation in equation (5) isthen performed for g(f[x(k)],M(k)) over all N_(F) frequency subchannelsto provide the estimate of the SNR for the equivalent AWGN channel,SNR_(equiv).

The function f[x] may be defined based on various channel capacityfunctions or some other functions or techniques. The absolute capacityof a system is typically given as the theoretical maximum data rate thatmay be reliably transmitted for the channel response H(k) and the noisevariance N₀. The “constrained” capacity of a system depends on thespecific modulation scheme or constellation, M(k), used for datatransmission and is lower than the absolute capacity.

In one embodiment, the function f[H(k),N₀,M(k)] is defined based on theconstrained channel capacity function and may be expressed as:$\begin{matrix}{{{f(k)} = {M_{k} - {\frac{1}{2^{M_{k}}}\underset{{i = 1}\;}{\overset{2^{M_{k}\;}}{\sum\;}}\;{E\left\lbrack {\log_{2}{\sum\limits_{j = 1}^{2^{M_{k}}}{\;{\exp\left( {{- {{SNR}(k)}}\left( {{{a_{i} - a_{j}}}^{2} + {2{Re}\left\{ {x^{*}\left( {a_{i} - a_{j}} \right)} \right\}}} \right)} \right)}}}} \right\rbrack}}}},} & {{Eq}\mspace{14mu}(6)}\end{matrix}$

where M_(k) is related to the modulation scheme M(k), i.e., themodulation scheme M(k) corresponds to a 2^(M) ^(k) -ary constellation(e.g., 2^(M) ^(k) -ary QAM), where each of the 2^(M) ^(k) points in theconstellation may be identified by M_(k) bits;

a_(i) and a_(j) are the points in the 2^(M) ^(k) -ary constellation;

x is a complex Gaussian random variable with zero mean and a variance of1/SNR(k); and

E[•] is the expectation operation, which is taken with respect to thevariable x in equation (6).

The constrained channel capacity function shown in equation (6) does nothave a closed form solution. Thus, this function may be numericallyderived for various modulation schemes and SNR values, and the resultsmay be stored to one or more tables. Thereafter, the function f[x] maybe evaluated by accessing the proper table with a specific modulationscheme and SNR.

In another embodiment, the function f[x] is defined based on the Shannon(or theoretical) channel capacity function and may be expressed as:f(k)=log₂[1+SNR(k)],  Eq (7)where W is the system bandwidth. As shown in equation (7), the Shannonchannel capacity is not constrained by any given modulation scheme(i.e., M(k) is not a parameter in equation (7)).

The particular choice of function to use for f[x] may be dependent onvarious factors, such as the OFDM system design. For a typical systemthat employs one or more specific modulation schemes, it has been foundthat the matrix Ψ defined as shown in equation (3), when used inconjunction with the constrained channel capacity for the function f[x]as shown in equation (6), is an accurate estimator of the maximumsupported data rate for the OFDM system for the AWGN channel as well asfor the multipath channel.

The function g(f[x],M(k)) determines the SNR needed in the AWGN channelto support the equivalent data rate, which is determined by the functionf[x], using the modulation scheme M(k). In one embodiment, the functiong(f[x],M(k)) is defined as:g(f[x],M(k))=f[x] ⁻¹  Eq (8)

Since the function f[x] is dependent on the modulation scheme M(k), thefunction g(f[x],M(k)) is also dependent on the modulation scheme. In oneimplementation, the function f[x]⁻¹ may be derived for each modulationscheme that may be selected for use and may be stored to a respectivetable. The function g(f[x],M(k)) may then be evaluated for a given valueof f[x] by accessing the specific table for the modulation scheme M(k).The function g(f[x],M(k)) may also be defined using other functions orderived by other means, and this is within the scope of the invention.

FIG. 2 is a flow diagram of an embodiment of a process 200 for selectingdata rate for use in the OFDM system based on the metric Ψ. Initially,the available data rates (i.e., those supported by the OFDM system) areordered such that D(0)<D(1)< . . . <D(N_(R)−1). The highest availabledata rate is then selected (e.g., by setting a rate variable to theindex for the highest data rate, or rate=N_(R)−1), at step 212. Variousparameters associated with the selected data rate D(rate), such as themodulation scheme M(rate), are then determined, at step 214. Dependingon the design of the OFDM system, each data rate may be associated withone or multiple modulation schemes. Each modulation scheme of theselected data rate may then be evaluated based on the following step.For simplicity, the following assumes that only one modulation scheme isassociated with each data rate.

The metric Ψ is then evaluated for the specific modulation schemeM(rate) associated with the selected data rate D(rate), at step 216.This may be achieved by evaluating the function for the metric Ψ, asshown in equation (3), which is: $\begin{matrix}{\Psi = {g{\left\{ {\left( {\sum\limits_{k = 0}^{N_{F} - 1}\;{f\left\lbrack {{H(k)},N_{0},{M({rate})}} \right\rbrack}} \right),{M({rate})}} \right\}.}}} & {{Eq}\mspace{14mu}(9)}\end{matrix}$

The metric Ψ represents an estimate of the SNR needed in the equivalentAWGN channel to reliably transmit the equivalent data rate using themodulation scheme M(rate).

The threshold SNR, SNR_(th)(rate), needed to transmit the selected datarate D(rate) with the desired PER of P_(e) in the AWGN channel is thendetermined, at step 218. The threshold SNR_(th)(rate) is a function ofthe modulation scheme M(rate) and the coding rate C(rate) associatedwith the selected data rate. The threshold SNR may be determined foreach of the possible data rates via computer simulation or by some othermeans, and may be stored for later use.

A determination is then made whether or not the metric Ψ is greater thanor equal to the threshold SNR_(th)(rate) associated with the selecteddata rate, at step 220. If the metric Ψ is greater than or equal toSNR_(th)(rate), which indicates that the SNR achieved by the OFDM systemfor the data rate D(rate) in the multipath channel is sufficient toachieve the desired PER of P_(e), then that data rate is selected foruse, at step 224. Otherwise, the next lower available data rate isselected for evaluation (e.g., by decrementing the rate variable by one,or rate=rate−1), at step 222. The next lower data rate is then evaluatedby returning to step 214. Steps 214 through 222 may be repeated as oftenas needed until the maximum supported data rate is identified andprovided in step 222.

The metric Ψ is a monotonic function of data rate and increases withincreasing data rate. The threshold SNR is also a monotonic functionthat increases with increasing data rate. The embodiment shown in FIG. 2evaluates the available data rates, one at a time, from the maximumavailable data rate to the minimum available data rate. The highest datarate associated with a threshold SNR, SNR_(th)(rate), that is smallerthan or equal to the metric Ψ is selected for use.

In another embodiment, the metric Ψ may be evaluated for a particularmodulation scheme M(r) to derive an estimate of the SNR for theequivalent AWGN channel, SNR_(equiv)(r). The maximum data rate,D_(max)(r), supported by the AWGN channel for the desired PER at thisequivalent SNR using the modulation scheme M(r) is then determined(e.g., via a look-up table). The actual data rate to be used in the OFDMsystem for the multipath channel may then be selected to be less than orequal to the maximum data rate, D_(max)(r), supported by the AWGNchannel.

In a second rate selection scheme, the metric Ψ is defined as apost-detection SNR achieved for the multipath channel by a singlecarrier system after equalization. The post-detection SNR isrepresentative of the ratio of the total signal power to the noise plusinterference after equalization at the receiver. Theoretical values ofpost-detection SNR achieved in the single carrier system withequalization may be indicative of the performance of an OFDM system, andtherefore may be used to determine the maximum supported data rate inthe OFDM system. Various types of equalizer may be used to process thereceived signal in the single carrier system to compensate fordistortions in the received signal introduced by the multipath channel.Such equalizers may include, for example, a minimum mean square errorlinear equalizer (MMSE-LE), a decision feedback equalizer (DFE), andothers.

The post-detection SNR for an (infinite-length) MMSE-LE may be expressedas: $\begin{matrix}{{{SNR}_{{mmse} - {le}} = \frac{1 - J_{\min}}{J_{\min}}},} & \text{Eq~~(10a)}\end{matrix}$where J_(min) is given by $\begin{matrix}{{J_{\min} = {\frac{T}{2\pi}{\int_{{- \pi}/T}^{\pi/T}{\frac{N_{0}}{{X\left( {\mathbb{e}}^{{j\omega}\; T} \right)} + N_{0}}\ {\mathbb{d}\omega}}}}},} & \text{Eq~~(10b)}\end{matrix}$where X(e^(jωT)) is the folded spectrum of the channel transfer functionH(f).

The post-detection SNR for an (infinite-length) DFE may be expressed as:$\begin{matrix}{{SNR}_{dfe} = {{\exp\left\lbrack {\frac{T}{2\pi}{\int_{{- \pi}/T}^{\pi/T}{{\ln\left( \frac{{X\left( {\mathbb{e}}^{{j\omega}\; T} \right)} + N_{0}}{N_{0}} \right)}{\mathbb{d}\omega}}}} \right\rbrack} - 1.}} & {{Eq}\mspace{14mu}(11)}\end{matrix}$

The post-detection SNRs for the MMSE-LE and DFE shown in equations (9)and (10), respectively, represent theoretical values. The post-detectionSNRs for the MMSE-LE and DFE are also described in further detail by J.G. Proakis, in a book entitled “Digital Communications”, 3rd Edition,1995, McGraw Hill, sections 10-2-2 and 10-3-2, respectively, which areincorporated herein by reference.

The post-detection SNRs for the MMSE-LE and DEE may also be estimated atthe receiver based on the received signal, as described in U.S. patentapplication Ser. Nos. 09/816,481 and 09/956,449, both entitled “Methodand Apparatus for Utilizing Channel State Information in a WirelessCommunication System,” respectively filed Mar. 23, 2001 and Sep. 18,2001, and U.S. patent application Ser. No. 09/854,235, entitled “Methodand Apparatus for Processing Data in a Multiple-Input Multiple-Output(MIMO) Communication System Utilizing Channel State Information,” filedMay 11, 2001, all assigned to the assignee of the present applicationand incorporated herein by reference.

Post-detection SNRs, such as those described by the analyticalexpressions shown in equations (10) and (11), may be determined for themultipath channel and used as an estimate of the metric Ψ (i.e.,ω≈SNR_(mmse-le) or Ψ≈SNR_(dfe)). The post-detection SNR (e.g.,SNR_(mmse-le) or SNR_(dfe)) for the equivalent AWGN channel may becompared against the threshold SNR, SNR_(th), derived for a particularset of parameters, D(r), M(r), C(r), and P_(e), to determine the datarate that may be used in the OFDM system for the multipath channel.

The metric Ψ may also be defined based on some other functions, and theequivalent data rate may also be estimated based on some othertechniques, and this is within the scope of the invention.

The data rate selected for use in the OFDM system based on the metric Ψrepresents a prediction of the data rate that may be supported by themultipath channel for the desired PER of P_(e). As with any rateprediction scheme, there will inevitably be prediction errors. In orderto ensure that the desired PER can be achieved, the prediction errorsmay be estimated and a back-off factor may be used in determining thedata rate that can be supported by the multipath channel. This back-offreduces the throughput of the OFDM system. Thus, it is desirable to keepthis back-off as small as possible while still achieving the desiredPER.

In accordance with another aspect of the invention, an incrementaltransmission (IT) scheme is provided and may be advantageously used inconjunction with the rate selection of the first aspect to reduce theamount of back-off and to improve system throughput. The IT schemetransmits a given packet using one or more discrete transmissions, onetransmission at a time and up to a particular limit. The firsttransmission for the packet includes sufficient amount of data such thatthe packet can be recovered error-free at the receiver based on theexpected channel conditions. However, if the first transmission isexcessively degraded by the communication channel such that error-freerecovery of the packet is not achieved, then an incremental transmissionof an additional amount of data for the packet is performed. Thereceiver then attempts to recover the packet based on the additionaldata in the incremental transmission and all data previously receivedfor the packet. The incremental transmission by the transmitter and thedecoding by the receiver may be attempted for one or more times, untilthe packet is recovered error-free or the maximum number of incrementaltransmissions is reached.

An embodiment of the IT scheme may be implemented as follows. First, thedata for a packet is coded using a lower coding rate (for a forwarderror correction code) than the coding rate that may be used for thepacket without any incremental transmission. Next, some of the codedbits for the packet are punctured and only a subset of all the codedbits is transmitted for the first transmission of the packet. If thepacket is correctly received, then the receiver may send back anacknowledgement (ACK) indicating that the packet was receivederror-free. Alternatively, the receiver may send back a negativeacknowledgement (NACK) if it receives the packet in error.

In either case, if the acknowledgement is not received by thetransmitter for the packet or a negative acknowledgement is received,then the transmitter sends an incremental packet to the receiver. Thisincremental packet may include some of the original punctured coded bitsthat were not sent in the first transmission. The receiver then attemptsto decode the packet by using the coded bits sent in both the firsttransmission as well as the second transmission. The additional codedbits from the second transmission provide more energy and improve theerror correction capability. One or more incremental transmissions maybe performed, typically one at a time until the acknowledgement isreceived or the negative acknowledgement is not received.

If incremental transmission is employed by the system, then a smallerback-off may be used to account for rate prediction errors and moreaggressive rate selections may be made. This may result in improvedsystem throughput.

The incremental transmission in combination with the rate selectiondescribed above also provides an efficient mechanism for determining themaximum data rate supported by fixed or slow-varying communicationchannels. Consider a fixed-access application where the multipathprofile of the channel changes slowly. In this case, an initial datarate may be selected based on the techniques described above and usedfor data transmission. If the initial data rate is higher than thechannel can support, then the IT scheme can transmit additional codedbits until the packet can be correctly decoded at the receiver. Themaximum data rate that the channel can support may then be determinedbased on the total number of coded bits sent in the first transmissionand any subsequent incremental transmissions. If the channel changesslowly, then the determined data rate may be used until the channelchanges, at which time a new data rate may be determined.

The incremental transmission thus provides numerous advantages. First,the use of incremental transmission allows for an aggressive data rateselection to increase system throughput. Second, incrementaltransmission provides a means for remedying prediction errors thatinevitably arise for any rate prediction scheme (with the frequency andmagnitude of the prediction errors being dependent on the amount ofback-off employed). And third, incremental transmission provides amechanism to more accurately determine the maximum supported data ratefor fixed or slow-varying channels.

FIG. 3 is a block diagram of an embodiment of a transmitter system 110 aand a receiver system 150 a, which are capable of implementing variousaspects and embodiments of the invention.

At transmitter system 110 a, traffic data is provided at a particulardata rate from a data source 308 to a transmit (TX) data processor 310,which formats, interleaves, and codes the traffic data based on aparticular coding scheme to provide coded data. The data rate and thecoding may be determined by a data rate control and a coding control,respectively, provided by a controller 330.

The coded data is then provided to a modulator 320, which may alsoreceive pilot data (e.g., data of a known pattern and processed in aknown manner, if at all). The pilot data may be multiplexed with thecoded traffic data, e.g., using time division multiplex (TDM) or codedivision multiplex (CDM), in all or a subset of the frequencysubchannels used to transmit the traffic data. In a specific embodiment,for OFDM, the processing by modulator 320 includes (1) modulating thereceived data with one or more modulation schemes, (2) transforming themodulated data to form OFDM symbols, and (3) appending a cyclic prefixto each OFDM symbol to form a corresponding transmission symbol. Themodulation is performed based on a modulation control provided bycontroller 330. The modulated data (i.e., the transmission symbols) isthen provided to a transmitter (TMTR) 322.

Transmitter 322 converts the modulated data into one or more analogsignals and further conditions (e.g., amplifies, filters, and quadraturemodulates) the analog signals to generate a modulated signal suitablefor transmission over the communication channel. The modulated signal isthen transmitted via an antenna 324 to the receiver system.

At receiver system 150 a, the transmitted modulated signal is receivedby an antenna 352 and provided to a receiver (RCVR) 354. Receiver 354conditions (e.g., filters, amplifies, and downconverts) the receivedsignal and digitizes the conditioned signal to provide data samples. Ademodulator (Demod) 360 then processes the data samples to providedemodulated data. For OFDM, the processing by demodulator 360 mayinclude (1) removing the cyclic prefix previously appended to each OFDMsymbol, (2) transforming each recovered OFDM symbol, and (3)demodulating the recovered modulation symbols in accordance with one ormore demodulation schemes complementary to the one or more modulationschemes used at the transmitter system.

A receive (RX) data processor 362 then decodes the demodulated data torecover the transmitted traffic data. The processing by demodulator 360and RX data processor 362 is complementary to that performed bymodulator 320 and TX data processor 310, respectively, at transmittersystem 110 a.

As shown in FIG. 3, demodulator 360 may derive estimates of the channelresponse, Ĥ(k), and provide these estimates to a controller 370. RX dataprocessor 362 may also derive and provide the status of each receivedpacket and may further provide one or more other performance metricsindicative of the decoded results. Based on the various types ofinformation received from demodulator 360 and RX data processor 362,controller 370 may determine or select a particular rate for the datatransmission based on the techniques described above. Feedbackinformation in the form of a selected rate, the channel responseestimates, ACK/NACK for the receive packet, and so on, may be providedby controller 370, processed by a TX data processor 378, modulated by amodulator 380, and conditioned and transmitted by a transmitter 354 backto transmitter system 110 a.

At transmitter system 110 a, the modulated signal from receiver system150 a is received by antenna 324, conditioned by a receiver 322, anddemodulated by a demodulator 340 to recover the feedback informationtransmitted by the receiver system. The feedback information is thenprovided to controller 330 and used to control the processing of thedata transmission to the receiver system. For example, the data rate ofthe data transmission may be determined based on the selected rateprovided by the receiver system, or may be determined based on thechannel response estimates from the receiver system. The specific codingand modulation schemes associated with the selected rate are determinedand reflected in the coding and modulation control provided to TX dataprocessor 310 and modulator 320. The received ACK/NACK may be used toinitiate an incremental transmission (not shown in FIG. 3 forsimplicity).

Controllers 330 and 370 direct the operation at the transmitter andreceiver systems, respectively. Memories 332 and 372 provide storage forprogram codes and data used by controllers 330 and 370, respectively.

FIG. 4 is a block diagram of a transmitter unit 400, which is anembodiment of the transmitter portion of transmitter system 110 a.Transmitter unit 400 includes (1) a TX data processor 310 a thatreceives and processes traffic data to provide coded data and (2) amodulator 320 a that modulates the coded data to provided modulateddata. TX data processor 310 a and modulator 320 a are one embodiment ofTX data processor 310 and modulator 320, respectively, in FIG. 3.

In the specific embodiment shown in FIG. 4, TX data processor 310 aincludes an encoder 412, a channel interleaver 414, and a puncturer 416.Encoder 412 receives and codes the traffic data in accordance with oneor more coding schemes to provide coded bits. The coding increases thereliability of the data transmission. Each coding scheme may include anycombination of CRC coding, convolutional coding, Turbo coding, blockcoding, and other coding, or no coding at all. The traffic data may bepartitioned into packets (or frames), and each packet may beindividually processed and transmitted. In an embodiment, for eachpacket, the data in the packet is used to generate a set of CRC bits,which is appended to the data, and the data and CRC bits are then codedwith a convolutional code or a Turbo code to generate the coded data forthe packet.

Channel interleaver 414 then interleaves the coded bits based on aparticular interleaving scheme to provide diversity. The interleavingprovides time diversity for the coded bits, permits the data to betransmitted based on an average SNR for the frequency subchannels usedfor the data transmission, combats fading, and further removescorrelation between coded bits used to form each modulation symbol. Theinterleaving may further provide frequency diversity if the coded bitsare transmitted over multiple frequency subchannels.

Puncturer 416 then punctures (i.e., deletes) zero or more of theinterleaved coded bits and provides the required number of unpuncturedcoded bits to modulator 320 a. Puncturer 416 may further provide thepunctured coded bits to a buffer 418, which stores these coded bits incase they are needed for an incremental transmission at a later time, asdescribed above.

In the specific embodiment shown in FIG. 4, modulator 320 a includes asymbol mapping element 422, an IFFT 424, and a cyclic prefix generator426. Symbol mapping element 422 maps the multiplexed pilot data andcoded traffic data to modulation symbols for one or more frequencysubchannels used for data transmission. One or more modulation schemesmay be used for the frequency subchannels, as indicated by themodulation control. For each modulation scheme selected for use, themodulation may be achieved by grouping sets of received bits to formmulti-bit symbols and mapping each multi-bit symbol to a point in asignal constellation corresponding to the selected modulation scheme(e.g., QPSK, M-PSK, M-QAM, or some other scheme). Each mapped signalpoint corresponds to a modulation symbol. Symbol mapping element 422then provides a vector of (up to N_(F)) modulation symbols for eachtransmission symbol period, with the number of modulation symbols ineach vector corresponding to the number of (up to N_(F)) frequencysubchannels selected for use for that transmission symbol period.

IFFT 424 converts each modulation symbol vector into its time-domainrepresentation (which is referred to as an OFDM symbol) using theinverse fast Fourier transform. IFFT 424 may be designed to perform theinverse transform on any number of frequency subchannels (e.g., 8, 16,32, . . . , N_(F), . . . ). In an embodiment, for each OFDM symbol,cyclic prefix generator 426 repeats a portion of the OFDM symbol to forma corresponding transmission symbol. The cyclic prefix ensures that thetransmission symbol retains its orthogonal properties in the presence ofmultipath delay spread, thereby improving performance againstdeleterious path effects. The transmission symbols from cyclic prefixgenerator 426 are then provided to transmitter 322 (see FIG. 3) andprocessed to generate a modulated signal, which is then transmitted fromantenna 324.

Other designs for the transmitter unit may also be implemented and arewithin the scope of the invention. The implementation of encoder 412,channel interleaver 414, puncturer 416, symbol mapping element 422, IFFT424, and cyclic prefix generator 426 is known in the art and notdescribed in detail herein.

The coding and modulation for OFDM and other systems are described infurther detail in the aforementioned U.S. patent application Ser. Nos.09/816,481, 09/956,449, and 09/854,235, U.S. patent application Ser. No.09/776,073, entitled “Coding Scheme for a Wireless CommunicationSystem,” filed Feb. 1, 2001, and U.S. patent application Ser. No.09/993,076, entitled “Multiple-Access Multiple-Input Multiple-Output(MIMO) Communication System,” filed Nov. 6, 2001, all assigned to theassignee of the present application and incorporated herein byreference.

An example OFDM system is described in U.S. patent application Ser. No.09/532,492, entitled “High Efficiency, High Performance CommunicationSystem Employing Multi-Carrier Modulation,” filed Mar. 30, 2000,assigned to the assignee of the present invention and incorporatedherein by reference. OFDM is also described in a paper entitled“Multicarrier Modulation for Data Transmission: An Idea Whose Time HasCome,” by John A. C. Bingham, IEEE Communications Magazine, May 1990,which is incorporated herein by reference.

FIG. 5 is a block diagram of an embodiment of a receiver unit 500, whichis one embodiment of the receiver portion of receiver system 150 a inFIG. 3. The transmitted signal from the transmitter system is receivedby antenna 352 (FIG. 3) and provided to receiver 354 (which may also bereferred to as a front-end processor). Receiver 354 conditions (e.g.,filters and amplifies) the received signal, downconverts the conditionedsignal to an intermediate frequency or baseband, and digitizes thedownconverted signal to provide data samples, which are then provided toa demodulator 360 a.

Within demodulator 360 a (FIG. 5), the data samples are provided to acyclic prefix removal element 510, which removes the cyclic prefixincluded in each transmission symbol to provide a correspondingrecovered OFDM symbol. A FFT 512 then transforms each recovered OFDMsymbol using the fast Fourier transform and provides a vector of (up toN_(F)) recovered modulation symbols for the (up to N_(F)) frequencysubchannels used for data transmission for each transmission symbolperiod. The recovered modulation symbols from FFT 512 are provided to ademodulation element 514 and demodulated in accordance with one or moredemodulation schemes that are complementary to the one or moremodulation schemes used at the transmitter system. The demodulated datafrom demodulation element 514 are then provided to a RX data processor362 a.

Within RX data processor 362 a, the demodulated data is de-interleavedby a de-interleaver 522 in a manner complementary to that performed atthe transmitter system, and the de-interleaved data is further decodedby a decoder 524 in a manner complementary to that performed at thetransmitter system. For example, a Turbo decoder or a Viterbi decodermay be used for decoder 524 if Turbo or convolutional coding,respectively, is performed at the transmitter unit. The decoded datafrom decoder 524 represents an estimate of the transmitted data. Decoder524 may provide the status of each received packet (e.g., receivedcorrectly or in error). Decoder 524 may further store demodulated datafor packets not decoded correctly, so that this data may be combinedwith data from a subsequent incremental transmission and decoded.

As shown in FIG. 5, a channel estimator 516 may be designed to estimatethe channel frequency response, Ĥ(k), and the noise variance,{circumflex over (N)}₀, and to provide these estimates to controller370. The channel response and noise variance may be estimated based onthe received data samples for the pilot symbols (e.g., based on the FFTcoefficients from FFT 512 for the pilot symbols).

Controller 370 may be designed to implement various aspects andembodiments of the rate selection and the signaling for the incrementaltransmission. For the rate selection, controller 370 may determine themaximum data rate that may be used for the given channel conditionsbased on the metric Ψ, as described above. For incremental transmission,controller 370 may provide an ACK or a NACK for each receivedtransmission for a given packet, which may be used at the transmittersystem to transmit an additional portion of the packet if the packetcannot be recovered correctly at the receiver system.

FIGS. 1A and 3 show a simple design whereby the receiver sends back therate for the data transmission. Other designs may also be implementedand are within the scope of the invention. For example, the channelestimates may be sent to the transmitter (instead of the rate), whichmay then determine the rate for the data transmission based on thereceived channel estimates.

The rate selection and incremental transmission techniques describedherein may be implemented using various designs. For example, channelestimator 516 in FIG. 5 used to derive and provide the channel estimatesmay be implemented by various elements in the receiver system. Some orall of the processing to determine the rate may be performed bycontroller 370 (e.g., with one or more look-up tables stored in memory372). Other designs for performing the rate selection and incrementaltransmission may also be contemplated and are within the scope of theinvention.

The rate selection and incremental transmission techniques describedherein may be implemented by various means. For example, thesetechniques may be implemented in hardware, software, or a combinationthereof. For a hardware implementation, some of the elements used toimplement the rate selection and/or incremental transmission may beimplemented within one or more application specific integrated circuits(ASICs), digital signal processors (DSPs), digital signal processingdevices (DSPDs), programmable logic devices (PLDs), field programmablegate arrays (FPGAs), processors, controllers, micro-controllers,microprocessors, other electronic units designed to perform thefunctions described herein, or a combination thereof.

For a software implementation, some portions of the rate selectionand/or incremental transmission may be implemented with modules (e.g.,procedures, functions, and so on) that perform the functions describedherein. The software codes may be stored in a memory unit (e.g., memory332 or 372 in FIG. 3) and executed by a processor (e.g., controller 330or 370). The memory unit may be implemented within the processor orexternal to the processor, in which case it can be communicativelycoupled to the processor via various means as is known in the art.

Constrained Capacity Rate Adaptation (CCRA) Algorithm

In an alternate embodiment, the rate adaptation scheme for orthogonalfrequency division multiplexing (OFDM) systems provided hereinabove isadapted to a practical environment, wherein the algorithm adjusts theideal case to reflect known practicalities of the system. Note that thealgorithm is provided in detail again for clarity of understanding. Suchextension may involve a back-off modification that lends the scheme forpractical implementation. The use of the back-off mechanism isparticularly important wherein system configuration and other systemconsiderations require adjustment. In other words, within one systemcertain conditions may incur a back-off modification, while others donot. The back-off mechanism is intended to coordinate the channel modelto the practical application. Situations in which the back-off may bedesirable include, but are not limited to: 1) channel coding technique;2) imperfect channel estimate; and/or 3) frequency and/or phase-offsetirregularities.

Consider an OFDM system according to one embodiment as describedhereinabove with N subcarriers in a multipath fading channel. Thealgorithm assumes the knowledge of the channel response across allsubcarriers {h(k),k=1, 2, . . . , N}, and the noise variance N_(o) atthe receiver. Given a set R={r_(p), p=1, 2, . . . , P} of data ratessupported by the transmitter each defined by a modulation scheme C_(p)and a code rate Rc_(p). Given also a corresponding set S={s_(p), p=1, 2,. . . , P} of the required SNR for predetermined PER level (say 1%). Thegoal is to find out the maximum achievable rate r_(max)∈R that can besupported by the channel for a given realization. A first algorithm isdefined as in FIG. 6, and is referred to as the Constrained CapacityRate Adaptation (CCRA) algorithm.

The CCRA algorithm, according to an exemplary embodiment, is defined bya process 600, wherein an index p is initialized at step 602. The indexp corresponds to the available encoding rates in a given communicationtransmitter, and is given as p=1, 2, . . . , P, wherein P is the totalnumber of distinct available rates. At step 602 the index p is set equalto P, wherein P corresponds to the highest rate in the set R of datarates. At step 604, the process calculates the constrained capacity x,given as: $\begin{matrix}{x = {\sum\limits_{k = 1}^{N}\;{f\left( {{h(k)},N_{o},{C\left( r_{p} \right)}} \right)}}} & {{Eq}\mspace{14mu}(12)}\end{matrix}$wherein f is the constrained capacity function, and C(r_(p)) is theconstellation size (modulation) at rate r_(p). The calculation process650 for the constrained capacity x is illustrated in FIG. 7B, whereinthe function f for evaluating the constrained capacity is determined atstep 652. The constrained capacity x is then calculated at step 654according to Equ. (12). The value of x is based on a mean of the channelcondition.

Returning to FIG. 7A, at step 606, the process calculates an equivalentSNR in the AWGN channel, denoted as Ψ, given as:Ψ=g(x)=f ⁻¹(x)  Eq (13)wherein g(x) is the inverse function of f(x). Note that Equ. (13) isconsistent with Equ. (9). At decision diamond 608, if Ψ>s_(p) then themaximum available data rate is set equal to the current data rate, i.e.,rate corresponding to p (r_(max)=r_(p)). Else, the index p isdecremented, i.e., p=p−1, and processing decrements p at step 612 andreturns to step 604.

Evaluation of the performance of the CCRA algorithm involves acomparison to an optimal rate selection process. The optimal selectionis a non-practical system which basically tests every possible rate (fora given channel realization) and selects the highest rate for a givenPER, e.g., PER<1%. It is expected that the algorithm will not beat theoptimal model, as the algorithm is not expected to support a higherthroughput without violating the designated PER. The best practicalalgorithm is the one that supports a throughput slightly less than theoptimal one with 1% PER.

The back-off could be necessitated as the result of the CCRA algorithmbeing based on a capacity formula which is by itself an over estimationof the supported rate, as the capacity formula provides the ratesupported by a perfect system employing perfect codes, which istypically not attainable in practice. In other words, the capacity is anupper bound on the achievable rate by the channel. Hence, an educatedadjustment, i.e., back-off, of the resultant rate produced by the CCRAalgorithm may be desired. Similarly, back-off may be desirable when asystem supports a variety of data rates wherein imperfections may beincurred during operation.

Modified-Constrained Capacitive Rate Adaptation (M-CCRA) Algorithm

Note that S is the set of SNRs corresponding to 1% PER for eachavailable rate in a practical system. It is also possible to evaluatethe theoretical ideal values for the SNR based on the capacity formula.Let the set of ideal SNR to be S_(cap)={S_(cap,p), p=1,2, . . . , P}.Note that S_(cap,p)<S_(p) ^(∀)p since S_(cap,p) is the required SNR foran ideal system while s_(p) is the required SNR for a practical system.Define the set Ω={Δ_(p)=s_(p)−S_(cap,p), p=1, 2, . . . , P}. Then Δ_(p)represents the additional required SNR for a practical system toovercome any imperfections in the system.

When the constrained capacity x in Equ. (13) lies between twoconsecutive rates, let's say r_(p) and r_(p+1), a correspondingadjustment in SNR may be made using the two levels are Δ_(p) andΔ_(p+1), respectively. To determine the adjustment for Ψ, the followingequations may be applied: $\begin{matrix}{{\Delta\Psi} = \frac{{\Delta_{p}\left( {r_{p + 1} - x} \right)} + {\Delta_{p + 1}\left( {x - r_{p}} \right)}}{r_{p + 1} - r_{p}}} & {{Eq}\mspace{14mu}(14)}\end{matrix}$ ΔΨ=max(Δ_(p),Δ_(p+1))Eq (15)Either of the calculations of Equ. (14) or Equ. (15) may then be appliedto the CCRA algorithm in addition to step 606 to replace Ψ with Ψ−ΔΨ. Inother words, with reference to FIG. 2, at step 220 replace thecomparison of Ψ to SNR with a comparison of Ψ−ΔΨ to SNR. TheModified-CCRA algorithm is illustrated in FIG. 7A. The process 700starts with initialization of the index p at step 702. The constrainedcapacity is then determined at step 704, using a calculation as given inEqu. (6) or Equ. (12). The SNR Ψ is calculated at step 706 as in Equ.(9) or Equ. (13). The modification of Equ. (14) or Equ. (15) is appliedat step 708 to generate Ψ′. At decision diamond 710, the modified SNR Ψ′is compared to s_(p), wherein if Ψ′ is greater than sp, the maximum rateis set to the rate identified by the current value of index p. Else, theindex p is decremented at step 714 and processing returns to step 704.

FIG. 8 illustrates performance of the CCRA algorithm compared to anoptimal or ideal rate selection. Note that in the CCRA algorithmprovides a solution having throughput close to the ideal solution, whileachieving the desired PER level, which in the exemplary embodiment is 1%PER.

Those of skill in the art would understand that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Those of skill would further appreciate that the various illustrativelogical blocks, modules, circuits, and algorithm steps described inconnection with the embodiments disclosed herein may be implemented aselectronic hardware, computer software, or combinations of both. Toclearly illustrate this interchangeability of hardware and software,various illustrative components, blocks, modules, circuits, and stepshave been described above generally in terms of their functionality.Whether such functionality is implemented as hardware or softwaredepends upon the particular application and design constraints imposedon the overall system. Skilled artisans may implement the describedfunctionality in varying ways for each particular application, but suchimplementation decisions should not be interpreted as causing adeparture from the scope of the present invention.

The various illustrative logical blocks, modules, and circuits describedin connection with the embodiments disclosed herein may be implementedor performed with a general purpose processor, a digital signalprocessor (DSP), an application specific integrated circuit (ASIC), afield programmable gate array (FPGA) or other programmable logic device,discrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.A general purpose processor may be a microprocessor, but in thealternative, the processor may be any conventional processor,controller, microcontroller, or state machine. A processor may also beimplemented as a combination of computing devices, e.g., a combinationof a Digital Signal Processor (DSP) and a microprocessor, a plurality ofmicroprocessors, one or more microprocessors in conjunction with a DSPcore, or any other such configuration.

The steps of a method or algorithm described in connection with theembodiments disclosed herein may be embodied directly in hardware, in asoftware module executed by a processor, or in a combination of the two.A software module may reside in Random Access Memory (RAM), FLASHmemory, Read-Only Memory (ROM), Erasable Programmable ROM (EPROM),Electrically EPROM (EEPROM), registers, hard disk, a removable disk, aCD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such the processorcan read information from, and write information to, the storage medium.In the alternative, the storage medium may be integral to the processor.The processor and the storage medium may reside in an ApplicationSpecific Integrated Circuit (ASIC). The ASIC may reside in a userterminal. In the alternative, the processor and the storage medium mayreside as discrete components in a user terminal.

The previous description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the principles and novelfeatures disclosed herein.

1. A receiver unit for a wireless communication system, the receiverunit comprising: a channel estimator configured to derive estimates ofone or more characteristics of a communication channel used for a datatransmission; a rate selector configured to receive channel estimatesfrom the channel estimator and a set of parameters indicative of aparticular rate for the data transmission, derive a metric for anequivalent channel, determine a threshold signal quality required forthe equivalent channel to support the particular rate, and indicatewhether or not the particular rate is supported by the communicationchannel based on the metric and the threshold signal quality; and ametric adjuster configured to adjust the metric for the equivalentchannel using a predetermined back-off factor.
 2. The receiver unit ofclaim 1, further comprising: a decoder configured to provide a status ofeach received transmission for a particular packet of data; and acontroller configured to provide feedback information comprised of theparticular rate and an indication of the packet status.
 3. An apparatusfor a wireless communication system, the apparatus comprising: means foridentifying a set of parameters for the data transmission; means forestimating one or more characteristics of the communication channel;means for deriving a metric for an equivalent channel based on the setof parameters and the one or more estimated channel characteristics;means for adjusting the metric to form an adjusted metric, whereinadjusting is done according to a back-off factor, the back-off factordesigned to minimize Packet Error Rate (PER); means for determining athreshold signal quality required for the equivalent channel to supporta particular data rate; means for comparing the adjusted metric to thethreshold signal quality; means for adjusting the threshold signalquality; means for selecting a data rate in response; means forindicating whether or not the particular data rate is supported by thecommunication channel based on the metric and the threshold signalquality; means for determining an equivalent data rate for theequivalent channel based on a first function, the set of parameters, andthe channel estimates, and wherein the metric is derived based on asecond function, the equivalent data rate, and a particular modulationscheme associated with the particular rate.
 4. The apparatus of claim 3,further comprising: means for storing one or more tables for the firstfunction.
 5. A method for determining a data rate for a datatransmission over a communication channel in a wireless communicationsystem, comprising: estimating one or more characteristics of thecommunication channel; deriving a metric for an equivalent channel basedon a set of parameters and the one or more estimated channelcharacteristics; adjusting the metric for the equivalent channel to forman adjusted metric, wherein adjusting is done according to a back-offfactor; determining a threshold signal quality required for theequivalent channel to support a particular data rate; comparing theadjusted metric to the threshold signal quality; and selecting a datarate in response to a result of comparing the adjusted metric to thethreshold signal quality.
 6. The method as in claim 5, wherein themetric is Signal-to-Noise Ratio.
 7. An apparatus for determining a datarate for a data transmission over a communication channel in a wirelesscommunication system, the apparatus comprising: means for estimating oneor more characteristics of the communication channel; means for derivinga metric for an equivalent channel based on a set of parameters and theone or more estimated channel characteristics; means for adjusting themetric for the equivalent channel to form an adjusted metric, whereinadjusting is done according to a back-off factor; means for determininga threshold signal quality required for the equivalent channel tosupport a particular data rate; means for comparing the adjusted metricto the threshold signal quality; and means for selecting a data rate inresponse to a result of comparing the adjusted metric to the thresholdsignal quality.
 8. A computer readable media embodying a computerprogram for determining a data rate for a data transmission over acommunication channel in a wireless communication system, the computerprogram comprising: a first set of instructions for estimating one ormore characteristics of the communication channel; a second set ofinstructions for deriving a metric for an equivalent channel based on aset of parameters and the one or more estimated channel characteristics;a third set of instructions for adjusting the metric for the equivalentchannel to form an adjusted metric, wherein adjusting is done accordingto a back-off factor; a fourth set of instructions for determining athreshold signal quality required for the equivalent channel to supporta particular data rate; a fifth set of instructions for comparing theadjusted metric to the threshold signal quality; and a sixth set ofinstructions for selecting a data rate in response to a result ofcomparing the adjusted metric to the threshold signal quality.